////给定一个二叉树，找出其最小深度。
////最小深度是从根节点到最近叶子节点的最短路径上的节点数量。
//struct TreeNode {
//    int val;
//    TreeNode* left;
//    TreeNode* right;
//    TreeNode() : val(0), left(nullptr), right(nullptr) {}
//    TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
//    TreeNode(int x, TreeNode* left, TreeNode* right) : val(x), left(left), right(right) {}
//    
//};
//int calculate(TreeNode* root)
//    {
//        if(root==nullptr)
//        return 0;
//        if(root->right==nullptr)
//        return calculate(root->left)+1;
//        if(root->left==nullptr)
//        return calculate(root->right)+1;
//
//        return  1+min(calculate(root->left),calculate(root->right));
//    }
//    int minDepth(TreeNode* root) {
//        return calculate(root);
//    }